package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.HhTypeMapper;
import com.ruoyi.system.domain.HhType;
import com.ruoyi.system.service.IHhTypeService;

/**
 * 商品类型Service业务层处理
 * 
 * @author ruoyi
 * @date 2021-06-16
 */
@Service
public class HhTypeServiceImpl implements IHhTypeService 
{
    @Autowired
    private HhTypeMapper hhTypeMapper;

    /**
     * 查询商品类型
     * 
     * @param typeId 商品类型ID
     * @return 商品类型
     */
    @Override
    public HhType selectHhTypeById(Long typeId)
    {
        return hhTypeMapper.selectHhTypeById(typeId);
    }

    /**
     * 查询商品类型列表
     * 
     * @param hhType 商品类型
     * @return 商品类型
     */
    @Override
    public List<HhType> selectHhTypeList(HhType hhType)
    {
        return hhTypeMapper.selectHhTypeList(hhType);
    }

    /**
     * 新增商品类型
     * 
     * @param hhType 商品类型
     * @return 结果
     */
    @Override
    public int insertHhType(HhType hhType)
    {
        hhType.setCreateTime(DateUtils.getNowDate());
        int flag;
        flag = hhTypeMapper.selecttypeIdcount(hhType.getParentId());
        if (flag<=0 && hhType.getParentId()!=0){
            return 0;
        }
        return hhTypeMapper.insertHhType(hhType);
    }

    /**
     * 修改商品类型
     * 
     * @param hhType 商品类型
     * @return 结果
     */
    @Override
    public int updateHhType(HhType hhType)
    {
        hhType.setUpdateTime(DateUtils.getNowDate());
        int flag = hhTypeMapper.selecttypeIdcount(hhType.getParentId());
        if (flag<=0 && hhType.getParentId()!=0){
            return 0;
        }
        return hhTypeMapper.updateHhType(hhType);
    }

    /**
     * 批量删除商品类型
     * 
     * @param typeIds 需要删除的商品类型ID
     * @return 结果
     */
    @Override
    public int deleteHhTypeByIds(Long[] typeIds)
    {
        return hhTypeMapper.deleteHhTypeByIds(typeIds);
    }

    /**
     * 删除商品类型信息
     * 
     * @param typeId 商品类型ID
     * @return 结果
     */
    @Override
    public int deleteHhTypeById(Long typeId)
    {
        return hhTypeMapper.deleteHhTypeById(typeId);
    }
}
